package com.itboy.mall.pms.attr.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.itboy.common.annotation.Excel;
import com.itboy.mall.pms.attrgroup.vo.MallAttrGroupVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;


/**
 * 商品属性视图对象 mall_attr
 *
 * @author itboy
 * @date 2021-07-24
 */
@Data
@ApiModel("商品属性视图对象")
public class MallAttrVo {

	private static final long serialVersionUID = 1L;

	/** 属性id */
	@ApiModelProperty("属性id")
	@JsonSerialize(using = ToStringSerializer.class)
	private Long attrId;

	/** 关联id */
	@ApiModelProperty("关联id")
	@JsonSerialize(using = ToStringSerializer.class)
	private Long relateId;

	/** 属性名 */
	@Excel(name = "属性名")
	@ApiModelProperty("属性名")
	private String attrName;

	/** 是否需要检索 */
	@Excel(name = "是否需要检索")
	@ApiModelProperty("是否需要检索")
	private Integer searchType;

	/** 属性图标 */
	@Excel(name = "属性图标")
	@ApiModelProperty("属性图标")
	private String icon;

	/** 可选值列表 */
	@Excel(name = "可选值列表")
	@ApiModelProperty("可选值列表")
	private String[] valueSelect;

	/** 属性类型 */
	@Excel(name = "属性类型")
	@ApiModelProperty("属性类型")
	private Integer attrType;

	/** 启用状态 */
	@Excel(name = "启用状态")
	@ApiModelProperty("启用状态")
	private Long enable;

	/** 所属分类 */
	@Excel(name = "所属分类Id")
	@ApiModelProperty("所属分类Id")
	private Long catalogId;

	/** 所属分类 */
	@Excel(name = "所属分类")
	@ApiModelProperty("所属分类")
	private String catalogName;

	/** 快速展示 */
	@Excel(name = "快速展示")
	@ApiModelProperty("快速展示")
	private Integer showDesc;

	/** 所属分类数组 */
	@Excel(name = "所属分类数组")
	@ApiModelProperty("所属分类数组")
	private String[] catalogIds;

	/** 属性分组id */
	@Excel(name = "属性分组id")
	@ApiModelProperty("属性分组id")
	@JsonSerialize(using = ToStringSerializer.class)
	private Long attrGroupId;

	/** 属性分组 */
	@Excel(name = "属性分组")
	@ApiModelProperty("属性分组")
	private List<MallAttrGroupVo> mallAttrGroupList;

	/** 值类型 */
	@Excel(name = "值类型")
	@ApiModelProperty("值类型")
	private Integer valueType;


}
